使用pandas进行文件读写 您所在的位置:网站首页 pandas 读取csv文件 使用pandas进行文件读写

使用pandas进行文件读写

#使用pandas进行文件读写| 来源: 网络整理| 查看: 265

pandas是数据分析的利器,既然是处理数据,首先要做的当然是从文件中将数据读取进来。pandas支持读取非常多类型的文件,示意如下

对于文本文件,支持csv, json等格式,当然也支持tsv文本文件;对于二进制文件,支持excel,python序列化文件,hdf5等格式;此外,还支持SQL数据库文件的读写。

在日常开发中,最经典的使用场景就是处理csv,tsv文本文件和excel文件了。对于不同格式的文件,pandas读取之后,将内容存储为DataFrame, 然后就可以调用内置的各种函数进行分析处理1. CSV文件读写和R语言类似,对于文本文件的读写,都提供了一个标准的read_table函数,用于读取各种分隔符分隔的文本文件。针对csv这种逗号分隔的特定格式,也提供了read_csv函数来进行处理,读取csv文件的用法如下>>> import pandas as pd>>> a = pd.read_csv('test.csv')

和python内置的csv模块相比,pandas的代码非常的简洁,只需要一行就可以搞定了。虽然代码简洁,但是我们要注意的是,根据需要灵活使用其中的参数,常见的参数如下

# sep参数指定分隔符,默认为逗号>>> pd.read_csv('test.csv', sep = "\t")# delimiter是sep的别名,用于指定分隔符,默认为逗号>>> pd.read_csv('test.csv', delimiter = "\t")# comment参数指定注释标识符,开头为注释标识符的行不会读取# 默认的注释标识符为#>>> pd.read_csv('test.csv', comment = "#")# 默认行为,指定第一行作为表头,即数据框的列名>>> pd.read_csv('test.csv', header = 0)# header = None, 没有表头,全部为数据内容>>> pd.read_csv('test.csv', header = None)# index_col参数,指定索引对应的列为数据框的行标签>>> pd.read_csv('test.csv', index_col=0)# usecols参数根据索引选择部分列>>> pd.read_csv('test.csv', usecols = (0, 1))# skiprows表示跳过开头前几行>>> pd.read_csv('test.csv', header = None, skiprows = 1)# nrows 表示只读取前几行的内容>>> pd.read_csv('test.csv', nrows = 2)# na_values 指定空值的形式,空值会用NaN来代替>>> pd.read_csv('test.csv', na_values = 3)

将DataFrame对象输出为csv文件的函数以及常用参数如下

# to_csv, 将数据框输出到csv文件中>>> a.to_csv("test1.csv")# header = None, 表示不输出数据框的列标签>>> a.to_csv('test1.csv', header = None)# index = False, 表示不输出数据框的行标签>>> a.to_csv('test1.csv', index = False)

2. Excel文件读写

pandas对xlrd, xlwt模块进行了封装,提供了简洁的接口来处理excel文件,支持xls和xlsx等格式的文件,读取excel文件的基本用法如下>>> pd.read_excel('test.xlsx')

pandas的文件读取函数中,大部分的参数都是共享的,比如header, index_col等参数,在read_excel函数中,上文中提到的read_csv的几个参数也同样适用。除此之外,因为excel有多个sheet, 所以read_excel函数有一个独有的参数sheet_name, 用法如下

# 用索引来指定sheet, 从0开始>>> pd.read_excel('test.xlsx', sheet_name=0)# 用sheet的名称来指定>>> pd.read_excel('test.xlsx', sheet_name='Sheet3')

对应地,输出excel的函数也和to_csv共享大部分参数,基本用法如下

# 输出exceldf.to_excel("output.xlsx")# 指定输出excel中sheet的名字df1.to_excel("output.xlsx", sheet_name='Sheet1')

pandas极大地简化了文件读写的代码,只需要掌握常用的几个参数即可。

·end·



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有